package pro.cherish.knowledgedemoaop.aop;

import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.*;
import org.springframework.stereotype.Component;

/**
 * @author 创建人：cherish
 * @version 版本号：V1.0
 * <p>
 * ***************************修订记录************************************
 * 2019-09-28 cherish 创建该类功能。
 * **********************************************************************
 * </p>
 * @ClassName 类名：WebLogAcpect7
 * @Description 功能说明：
 * <p>
 * TODO
 * </p>
 * **********************************************************************
 * @date 创建日期： 2019-09-28 cherish
 */
@Aspect
@Component
@Slf4j
public class WebLogAcpect7 {
    /**
     * 定义切入点，切入点为com.example.aop下的所有函数
     */
    @Pointcut("@annotation(pro.cherish.knowledgedemoaop.annotation.TestHandle) && args(name,age)")
    public void webLog(String name,Integer age){}

    /**
     * 前置通知：在连接点之前执行的通知
     * @param joinPoint
     * @throws Throwable
     */
    @Before(value = "webLog(name,age)")
    public void doBefore(JoinPoint joinPoint,String name,Integer age) throws Throwable {
        System.out.println(name+" "+age);
    }

}
